<?php
/*
 * Page Agregar Enfermedad (Enfermedades que se registran a pacientes).
 * @Autor: Andrés Ubilla.
 */
class Agregar extends TPage{
    public function onLoad($param){
        parent::onLoad($param);
        if(!$this->IsPostBack){
            $this->validarSession();
            $this->iniciarControles();
        }
    }
    
    private function validarSession(){
        $oUsuario = Util::getSession("Usuario");
        if(Util::isNullOrEmpty($oUsuario)){
            $this->Response->redirect($this->Service->constructUrl("Home"));
        }
    }
    
    private function iniciarControles(){
        $this->txtNombre->Attributes->Add("required","required");
    }
    
    private function limpiarForm(){
        $this->txtNombre->Text = "";
    }
    
    public function btnRegistrarEnfermedadOnClick($sender, $param){
        try{
            $oEnfermedad = new Enfermedad();
            
            $oEnfermedad->setNombre($this->txtNombre->Text);
            $oEnfermedad->setEstado(1);
            
            $oEnfermedadBLL = new EnfermedadBLL();
            $idEnfermedad = $oEnfermedadBLL->grabar($oEnfermedad);

            if(is_int($idEnfermedad) && $idEnfermedad > 0){
                $this->limpiarForm();
                $this->litAlert->Text = Util::setMensajeUsuario("Enfermedad ha sido registrada exitosamente.", Util::MENSAJE_OK);                
            }else{   
                $oEnfermedadBLL->eliminar($idEnfermedad);
                $this->litAlert->Text = Util::setMensajeUsuario("Error al registrar la enfermedad, vuelva a intentarlo.", Util::MENSAJE_ERROR);
            }
        } catch (Exception $e){
            $oEnfermedadBLL->eliminar($idEnfermedad);
            throw new Exception($e->getMessage());
        }
    }
}
?>
